﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FDEE.Model
{
    public abstract class MemberBase
    {
        
        public string TypeName;
        public string PierNumber;
        public int Count=1;//默认数量为1
        public RebarCollection RebarList;        
        public double ConcreteVolumn;
        public eConcreteClass ConcreteClass;
        public UBoltCounter UboltList;
        #region 桩基独有参数
        public int numCB, UAN1N2, UAN2N3, UAN3N3, UBN1N7, UBN2N7, UBN3N7;
        #endregion

        protected MemberBase(string typeName, string pierNumber)
        {           
            //兼容vs2015或之前版本
            if (typeName == null)
            {
                throw new ArgumentNullException(nameof(typeName));
            }
            else
            {
                TypeName = typeName;
            }
            if (pierNumber == null)
            {
                throw new ArgumentNullException(nameof(pierNumber));
            }
            else
            {
                PierNumber = pierNumber;
            }
            RebarList = new RebarCollection();            
            ConcreteVolumn = 0;
            ConcreteClass = eConcreteClass.None;
            UboltList = new UBoltCounter();
            //SetConcreteVolume();
            //SetRebarList();            
            //SetConcreteClass();
        }
        
        public abstract void SetConcreteVolume();
        public abstract void SetRebarList();        
        public abstract void SetConcreteClass();
    }
}
